// 使用install为了挂在到vue原型对象上
// 对全局指令封装
const directiveObj = {
  install (Vue) {
    // 创建自定义指令自动聚焦
    Vue.directive('fofo', {
    // inserted插入到真实dom的时候才触发
      inserted (el) {
        fn(el)
      },
      // 标签被更新时触发
      update (el) {
        fn(el)
      }
    })
  }
}

function fn (el) {
  if (el.nodeName === 'TEXTAREA' || el.nodeName === 'INPUT') {
    setTimeout(() => {
      el.focus()
    }, 500)
  } else {
    setTimeout(() => {
      // 找input输入框
      const input = el.querySelector('input')
      if (input) {
        input.focus()
      }
    }, 0)
  }
}

export default directiveObj
